MediaGoblin 0.3.0: Rise of the RoboGoblins
#published 2012-05-01 10:00
#author Deb Nicholson

<p class="centered">
  <img src="/blog_images/mediagoblin_0.3.0_banner.png"
       alt="MediaGoblin 0.3.0: Rise of the RoboGoblins banner" />
</p>

<p>It's our birthday!! A whole year of writing the decentralized media
future. We can't wait for year two; new challenges, new opportunities
and new technologies. We're rolling out a set of awesome features in
this release to raise a legion of RoboGoblins!  The three biggest
milestones for the 0.3.0 release are:</p>

<ul>
  <li>The database switch is finished, YAY!</li>
  <li>Audio support is achieved, YAY!</li>
  <li>Mobile layout - take one!</li>
</ul>

<p>Organizationally, we continue to grow. In particular, we have some
exciting news about our level of professionality and for-realness. But
first, let's take a look at all the new code.</p>

<p>The massive time-consuming Mongo to SQL database conversion is
finished! SQL scales down more gracefully, making lighter-weight
deployments possible -- a critical feature for federation. We also
think that SQL's popularity will make it easier (or at least less
daunting) for people to install and tweak their instances. A <i>SPECIAL</i>
thanks to Elrond, without whom this Herculean task just would not have
happened.</p>

<p>We have audio support! MediaGoblin can handle MP3, FLAC, Ogg, WAV,
M4A. We convert them all
to <a href="http://www.vorbis.org/">Vorbis</a> and run them in
a <a href="http://www.webmproject.org"> WebM container</a>.  All
played through HTML5 audio!</p>

<p class="blog_image">
  <a href="/blog_images/mediagoblin_0.3.0_audio_demo.png"
     ><img src="/blog_images/mediagoblin_0.3.0_audio_demo-scaled.png"
           alt="The audio player!" /></a>
</p>

<p>We're on your phones, serving you media! We've written an alternate
style sheet so users can reasonably check out media on the go. True
mobile-app-dom for submitting media will have to wait for the
completion of our API. In the meantime, here's our first stab at a
mobile layout:</p>

<p class="blog_image">
  <a href="/blog_images/mediagoblin_0.3.0_mobile.png"
     ><img src="/blog_images/mediagoblin_0.3.0_mobile.png"
           alt="The mobile layout!" /></a>
</p>

<p>We worked hard to make video smoother and the look of MediaGoblin
nicer. We added <a href="http://videojs.com/">video.js</a> which is
basically a style sheet functionality for HTML5 video players.  Then
we made a custom skin so our player would match the rest of the
site. Take a look:</p>

<p class="blog_image">
  <a href="/blog_images/mediagoblin_0.3.0_videojs.png"
     ><img src="/blog_images/mediagoblin_0.3.0_videojs-scaled.png"
           alt="The improved video player!" /></a>
</p>

<p>Video pre-buffering is also smarter now. A little bit loads (not
the whole video) and then it waits for the user to press
play. Numerous enhancements were also made to the theme for this
release.  For instance, the top bar is nicer and user comments render
cleaner. Take a look: </p>

<p class="blog_image">
  <a href="/blog_images/mediagoblin_0.3.0_theme_improvements.png"
     ><img src="/blog_images/mediagoblin_0.3.0_theme_improvements-scaled.png"
           alt="Smoother looking theme" /></a>
</p>

<p>We made improvements to the testing and installation processes, all
with the end goal of making it easy to set up and debug your own
instance. Our new lazycelery.sh script should make testing and
deploying with celery a bit easier. We've added ipython support in the
gmg shell subcommand and removed the pygtk dependency. You don't have
to install X Windows just to have video support on your server
anymore, whoo! We also refactored the processing pipeline code (image
resizing and transcoding, etc) which will make things easier to
develop moving forward.</p>

<p>We also have
<a href="http://docs.mediagoblin.org/relnotes.html">release notes</a>
now!  If upgrading from an older version of MediaGoblin you should
check these out, especially given the recent database change.</p>

<p> Thanks to our wonderful and generous contributors! Jorge Araya
Navarro, Elrond, Will Kahn-Greene, Deb Nicholson, Christopher Allan
Webber, Jef van Schendel, Svavar Kjarrval, Luke Slater, Joar Wandborg,
Sacha De'Angeli, Bassam Kurdali, Derek Moore, Brett Smith, Jacob
Kramer, Hugo Boyer and chrono --thanks!</p>

<p>We also have our first paid contributor! Joar Wandborg is getting
funding from the Icelandic government to build our API. We are
officially a for-real, grown-up project. Congratulations to Joar,
major thanks to Tryggvi Björgvinsson for coordinating things, and Takk
fyrir to Iceland!</p>

<p>What's next as we write the RoboGoblin future? Our plugin system is
getting close. Plus, there is loads to do to make federation a dreamy,
bug-free user-experience. In the coming months we'll be working on
better <a href="http://activitystrea.ms/">ActivityStreams</a>
and <a href="http://code.google.com/p/pubsubhubbub/">PubSubHubbub</a>
support.  We're also working towards using
the <a href="http://www.salmon-protocol.org/">Salmon Protocol</a> to
handle comment notification, favoriting, and so on across
instances. These are the nuts and bolts of federation and many of
these bits need some creative tinkering to make them work flawlessly
with media hosting. If that sounds like your kind of fun, then we
would love to meet you.</p>

<p>Additionally, we need help testing social features like favoriting
and other curation tools. MediaGoblin aims to be functional, gorgeous
and user-savvy. If you have opinions about user experience and how
media should be served, then we absolutely want to hear from you!  As
always, we're beeping and whirring away in
<a href="http://webchat.freenode.net/?channels=mediagoblin">#mediagoblin
on freenode.net</a>.  You can also join
the <a href="http://lists.mediagoblin.org/listinfo/devel">mailing
list</a>.  One way or another we'd love to have you around,
so <a href="/pages/join.html">join us</a>!</p>
